package com.lsa.blog.service;

import com.lsa.blog.po.Tag;
import com.lsa.blog.po.Tag;
import com.lsa.blog.po.Type;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;


public interface TagService {
    /**
     * 保存标签
     * @param tag
     * @return
     */
    Tag saveTag(Tag tag);

    /**
     * 获得标签
     * @param id
     * @return
     */
    Tag getTag(Long id);

    /**
     * 根据标签名称查找
     * @param name
     * @return
     */
    Tag getTagByName(String name);

    /**
     * 分页
     * @param pageable
     * @return
     */
    Page<Tag> listTag(Pageable pageable);

    List<Tag> listTag();

    List<Tag>listTagTop(Integer size);

    List<Tag> listTag(String ids);

    /**
     * 修改分页
     * @param id
     * @param tag
     * @return
     */
    Tag updateTag(Long id,Tag tag);

    /**
     * 删除标签
     * @param id
     */
    void deleteTag(Long id);
}
